package objects.ChooseLevelItem
{
	import flash.events.Event;
	import flash.geom.Point;
	import objects.cicleItem.Cicle_Item;
	import objects.cicleItem.itemInCicle;
	import starling.core.Starling;
	import starling.display.Image;
	import starling.display.MovieClip;
	import starling.display.Sprite;
	import starling.events.Event;
	import starling.events.Touch;
	import starling.events.TouchEvent;
	import starling.events.TouchPhase;
	import starling.filters.BlurFilter;
	import starling.filters.ColorMatrixFilter;
	import starling.filters.FragmentFilter
	import com.greensock.TweenLite;
	import com.greensock.*;
	import com.greensock.easing.*;
	
	/**
	 * ...
	 * @author
	 */
	public class cicleItemChooseLevel extends ChooseLevel_Item
	{
		public var colorMatrixFilter:ColorMatrixFilter;
		
		public function cicleItemChooseLevel(_sprite:Sprite, _pos:Point)
		{
			
			super(_sprite, _pos);

			this.addEventListener(starling.events.Event.ADDED_TO_STAGE, init);
			_sprite.addChild(this);
		
		}
		
		override public function update(dt:Number):void
		{
		
		}
		
		public function setStageInfo():void
		{
			for (var i:int = 0; i < m_baseItem.length; i++)
			{
				switch(database.instance.m_curStage)
				{
					case 0:
						m_baseItem[i].m_star = database.instance.RESULTSTARSTAGE1[i + 1];
						this.m_level = database.instance.RESULTSTARSTAGE1[0];
						break;
					case 1:
						m_baseItem[i].m_star = database.instance.RESULTSTARSTAGE2[i + 1];
						this.m_level = database.instance.RESULTSTARSTAGE2[0];
						break;
				}
				
				m_baseItem[i].showStar();
				if (i < this.m_level)
				{
					m_baseItem[i].m_stage = 1;
				}
				if (i == this.m_level)
				{
					m_baseItem[i].m_stage = 0;
				}
				if (i > this.m_level)
				{
					m_baseItem[i].m_stage = -1;
				}
				switch(database.instance.m_curStage)
				{
					case 0:
						if (i == this.m_level && database.instance.RESULTSTARSTAGE1[12]!=0)
						{
							m_baseItem[i].m_stage = 1;
						}
						break;
					case 1:
						if (i == this.m_level && database.instance.RESULTSTARSTAGE2[8]!=0)
						{
							m_baseItem[i].m_stage = 1;
						}
						break;
				}
			}
			
			makeStage();
		}
		
		public function levelUp():void
		{
		}
		
		public function setCicleInfo():void // gia tri star cho skill
		{

			setItemInfo();

		}
		
		public function setItemInfo():void
		{
			switch (database.instance.m_curStage)
			{
				case 0:
					m_baseItem[7].refresh();
					m_baseItem[7].addText(" Phong Châu ", "0xffffff", 15, 10);
					m_baseItem[7].addText("  Thủ lĩnh Kiều Công Hãn\n  (Lâm Thao, Phú thọ)\n\n\n\n", "0xFFFF00", 14, 40);
					m_baseItem[7].setScale(50);
					
					m_baseItem[5].refresh();
					m_baseItem[5].addText(" Tam Đái ", "0xffffff", 15, 10);
					m_baseItem[5].addText("  Thủ lĩnh Nguyễn Khoan \n  (Vĩnh Tường-Vĩnh Phúc)\n\n\n\n", "0xFFFF00", 14, 40);
					m_baseItem[5].setScale(50);
					
					m_baseItem[9].refresh();
					m_baseItem[9].addText(" Đỗ Động Giang ", "0xffffff", 15, 10);
					m_baseItem[9].addText("  Thủ lĩnh Đỗ Cảnh Thạc\n  (Thanh Oai-Hà Nội)\n\n\n\n", "0xFFFF00", 14, 40);
					m_baseItem[9].setScale(50);
					
					m_baseItem[10].refresh();
					m_baseItem[10].addText(" Tây Phù Liệt ", "0xffffff", 15, 10);
					m_baseItem[10].addText("  Thủ lĩnh Nguyễn Siêu\n  (Thanh Trì-Hà Nội)\n\n\n\n", "0xFFFF00", 14, 40);
					m_baseItem[10].setScale(50);
					
					m_baseItem[4].refresh();
					m_baseItem[4].addText(" Tiên Du ", "0xffffff", 15, 10);
					m_baseItem[4].addText("  Thủ lĩnh Nguyễn Thủ Tiệp\n  (Bắc Ninh)\n\n\n\n", "0xFFFF00", 14, 40);
					m_baseItem[4].setScale(50);
					
					m_baseItem[3].refresh();
					m_baseItem[3].addText(" Siêu Loại         ", "0xffffff", 15, 10);
					m_baseItem[3].addText("  Thủ lĩnh Lý Khuê\n  (Thuận Thành-Bắc Ninh)\n\n\n\n", "0xFFFF00", 14, 40);
					m_baseItem[3].setScale(50);
					
					m_baseItem[1].refresh();
					m_baseItem[1].addText(" Tế Giang         ", "0xffffff", 15, 10);
					m_baseItem[1].addText("  Thủ lĩnh Lã Đường\n  (Văn Giang-Hưng Yên)\n\n\n\n", "0xFFFF00", 14, 40);
					m_baseItem[1].setScale(50);
					
					m_baseItem[0].refresh();
					m_baseItem[0].addText(" Bố Hải Khẩu  ", "0xffffff", 15, 10);
					m_baseItem[0].addText("  Thủ lĩnh Trần Lãm\n  (Thái Bình)\n\n\n\n", "0xFFFF00", 14, 40);
					m_baseItem[0].setScale(50);
					
					m_baseItem[8].refresh();
					m_baseItem[8].addText(" Hồi Hồ         ", "0xffffff", 15, 10);
					m_baseItem[8].addText("  Thủ lĩnh Kiều Thuận\n  (Cẩm Khê-Phú Thọ)\n\n\n\n", "0xFFFF00", 14, 40);
					m_baseItem[8].setScale(50);
					
					m_baseItem[6].refresh();
					m_baseItem[6].addText(" Đường Lâm         ", "0xffffff", 15, 10);
					m_baseItem[6].addText("  Thủ lĩnh Ngô Nhật Khánh\n  (Sơn Tây-Hà Nội)\n\n\n\n", "0xFFFF00", 14, 40);
					m_baseItem[6].setScale(50);
					
					m_baseItem[11].refresh();
					m_baseItem[11].addText(" Bình Kiều         ", "0xffffff", 15, 10);
					m_baseItem[11].addText("  Thủ lĩnh Ngô Xương Xí\n  (Triệu Sơn-Thanh Hóa)\n\n\n\n", "0xFFFF00", 14, 40);
					m_baseItem[11].setScale(50);
					
					m_baseItem[2].refresh();
					m_baseItem[2].addText(" Đằng Châu         ", "0xffffff", 15, 10);
					m_baseItem[2].addText("  Thủ lĩnh Phạm Bạch Hổ\n  (Hưng Yên)\n\n\n\n", "0xFFFF00", 14, 40);
					m_baseItem[2].setScale(50);
					
					break;
					
				case 1:
					m_baseItem[3].refresh();
					m_baseItem[3].addText("  Động Giáp", "0xffffff", 15, 10);
					m_baseItem[3].addText("  Phò mã Thân Cảnh Phúc chỉ huy\n\n\n\n", "0xFFFF00", 14, 40);
					m_baseItem[3].setScale(50);
					
					m_baseItem[6].refresh();
					m_baseItem[6].addText(" Bến Thị Cầu", "0xffffff", 15, 10);
					m_baseItem[6].addText(" Lý Thường Kiệt chỉ huy\n\n\n\n", "0xFFFF00", 14, 40);
					m_baseItem[6].setScale(50);
					
					m_baseItem[1].refresh();
					m_baseItem[1].addText("  Động Cổ Lộng", "0xffffff", 15, 10);
					m_baseItem[1].addText("  Thủ lĩnh (Chưa rõ)\n\n\n\n", "0xFFFF00", 14, 40);
					m_baseItem[1].setScale(50);
					
					m_baseItem[2].refresh();
					m_baseItem[2].addText("  Môn Châu", "0xffffff", 15, 10);
					m_baseItem[2].addText("  Các tù trưởng Sầm Khánh Tân,\n  Nùng Thuận Linh chỉ huy\n\n\n\n", "0xFFFF00", 14, 40);
					m_baseItem[2].setScale(50);
					
					m_baseItem[4].refresh();
					m_baseItem[4].addText("  Tô Mậu", "0xffffff", 15, 10);
					m_baseItem[4].addText("  Vi Thu An chỉ huy\n\n\n\n", "0xFFFF00", 14, 40);
					m_baseItem[4].setScale(50);
					
					m_baseItem[5].refresh();
					m_baseItem[5].addText(" Bến Như Nguyệt        ", "0xffffff", 15, 10);
					m_baseItem[5].addText(" Lý Thường Kiệt chỉ huy\n\n\n\n", "0xFFFF00", 14, 40);
					m_baseItem[5].setScale(50);
					
					m_baseItem[7].refresh();
					m_baseItem[7].addText(" Bến Phấn Động        ", "0xffffff", 15, 10);
					m_baseItem[7].addText(" Lý Thường Kiệt chỉ huy\n\n\n\n", "0xFFFF00", 14, 40);
					m_baseItem[7].setScale(50);
					
					m_baseItem[0].refresh();
					m_baseItem[0].addText("  Quảng Nguyên ", "0xffffff", 15, 10);
					m_baseItem[0].addText("  Lưu Kỷ chỉ huy\n\n\n\n", "0xFFFF00", 14, 40);
					m_baseItem[0].setScale(50);
					
					break;
			}
		}
		
		private function init(e:starling.events.Event):void
		{
			removeEventListener(starling.events.Event.ADDED_TO_STAGE, init);
			//vong tron
			
			
			//item
			m_baseItem = new Array();
			switch (database.instance.m_curStage)
			{
				case 0: 
					m_spriteImage = new Image(Assets.getTexture("map"));
					this.addChild(m_spriteImage);
					for (var i:int = 0; i < 12; i++)
					{
						var _item:itemInChooseLevel = new itemInChooseLevel(0, "flag", m_sprite);
						_item.filter = null;
						m_baseItem.push(_item);
						this.addChild(_item);
					}
					break;
					
				case 1: 
					m_spriteImage = new Image(Assets.getTexture("map2"));
					this.addChild(m_spriteImage);
					for (i = 0; i < 8; i++)
					{
						_item = new itemInChooseLevel(0, "flag2", m_sprite);
						_item.filter = null;
						m_baseItem.push(_item);
						this.addChild(_item);
					}
					break;
			}
			
			this.setAnchorPoint();
			this.setPos(m_pos);
			this.setCicleInfo();
			this.setStageInfo();
		
		}
		
		public function makeStage():void
		{
			for (var i:int = 0; i < m_baseItem.length; i++)
			{
				if (m_baseItem[i].m_stage == -1)
				{
					colorMatrixFilter = new ColorMatrixFilter();
					colorMatrixFilter.adjustSaturation(-1); // make image Grayscale
					m_baseItem[i].filter = colorMatrixFilter;
					m_baseItem[i].starImage.visible = false;
				}
				if (m_baseItem[i].m_stage == 0)
				{
					//m_baseItem[i].m_imageBase.currentFrame = 1;
					m_baseItem[i].filter = null;
					m_baseItem[i].starImage.visible = false;
					
				}
				if (m_baseItem[i].m_stage == 1)
				{
					m_baseItem[i].filter = null;
					m_baseItem[i].starImage.visible = true;
						//m_baseItem[i].m_imageBase.currentFrame = 1;
						//m_baseItem[i].starImage.currentFrame = 1;
				}
			}
		}
		
		public function setPos(_pos:Point):void
		{
			var w1:int = m_baseItem[0].width;
			var h1:int = m_baseItem[0].height;
			m_spriteImage.x = _pos.x;
			m_spriteImage.y = _pos.y;
			
			switch (database.instance.m_curStage)
			{
				case 0: 
					m_baseItem[0].x = 770+m_baseItem[0].width / 2-35;
					m_baseItem[0].y = 550+m_baseItem[0].height / 2-42;
					
					m_baseItem[1].x = 830+m_baseItem[0].width / 2-35; //
					m_baseItem[1].y = 450+m_baseItem[0].height / 2-42;
					
					m_baseItem[3].x = 800+m_baseItem[0].width / 2-35; //
					m_baseItem[3].y = 360+m_baseItem[0].height / 2-42;
			
					m_baseItem[4].x = 710+m_baseItem[0].width / 2-35; //
					m_baseItem[4].y = 365+m_baseItem[0].height / 2-42;
					
					m_baseItem[10].x = 630+m_baseItem[0].width / 2-35; //
					m_baseItem[10].y = 450+m_baseItem[0].height / 2-42;
					
					m_baseItem[9].x = 520+m_baseItem[0].width / 2-35; //
					m_baseItem[9].y = 400+m_baseItem[0].height / 2-42;
					
					m_baseItem[5].x = 650+m_baseItem[0].width / 2-35; //
					m_baseItem[5].y = 300+m_baseItem[0].height / 2-42;
					
					m_baseItem[7].x = 440+m_baseItem[0].width / 2-35; //
					m_baseItem[7].y = 270+m_baseItem[0].height / 2-42;
					
					m_baseItem[8].x = 350+m_baseItem[0].width / 2-35; //
					m_baseItem[8].y = 290+m_baseItem[0].height / 2-42;
					
					m_baseItem[6].x = 550+m_baseItem[0].width / 2-35; //
					m_baseItem[6].y = 320+m_baseItem[0].height / 2-42;
					
					m_baseItem[11].x = 630+m_baseItem[0].width / 2-35;//
					m_baseItem[11].y = 650+m_baseItem[0].height / 2-42;
					
					m_baseItem[2].x = 750+m_baseItem[0].width / 2-35;//
					m_baseItem[2].y = 450+m_baseItem[0].height / 2-42;
					
					var x0:int = m_baseItem[0].x;
					var y0:int = m_baseItem[0].y;
					var x1:int = m_baseItem[1].x;
					var y1:int = m_baseItem[1].y;
					var x2:int = m_baseItem[2].x;
					var y2:int = m_baseItem[2].y;
					var x3:int = m_baseItem[3].x;
					var y3:int = m_baseItem[3].y;
					var x4:int = m_baseItem[4].x;
					var y4:int = m_baseItem[4].y;
					var x5:int = m_baseItem[5].x;
					var y5:int = m_baseItem[5].y;
					var x6:int = m_baseItem[6].x;
					var y6:int = m_baseItem[6].y;
					var x7:int = m_baseItem[7].x;
					var y7:int = m_baseItem[7].y;
					var x8:int = m_baseItem[8].x;
					var y8:int = m_baseItem[8].y;
					var x9:int = m_baseItem[9].x;
					var y9:int = m_baseItem[9].y;
					var x10:int = m_baseItem[10].x;
					var y10:int = m_baseItem[10].y;
					var x11:int = m_baseItem[11].x;
					var y11:int = m_baseItem[11].y;
					
					m_baseItem[0].m_info.x = x0 + m_baseItem[0].width - 50;
					m_baseItem[0].m_info.y = y0 - m_baseItem[0].height + 50;
					
					m_baseItem[1].m_info.x = x1 + m_baseItem[1].width - 50;
					m_baseItem[1].m_info.y = y1 - m_baseItem[1].height + 50;
					
					m_baseItem[2].m_info.x = x2 + m_baseItem[2].width - 50;
					m_baseItem[2].m_info.y = y2 - m_baseItem[2].height + 50;
					
					m_baseItem[3].m_info.x = x3 + m_baseItem[3].width - 50;
					m_baseItem[3].m_info.y = y3 - m_baseItem[3].height + 50;
					
					m_baseItem[4].m_info.x = x4 + m_baseItem[4].width - 50;
					m_baseItem[4].m_info.y = y4 - m_baseItem[4].height + 50;
					
					m_baseItem[5].m_info.x = x5 + m_baseItem[4].width - 50;
					m_baseItem[5].m_info.y = y5 - m_baseItem[4].height + 50;
					
					m_baseItem[6].m_info.x = x6 + m_baseItem[4].width - 50;
					m_baseItem[6].m_info.y = y6 - m_baseItem[4].height + 50;
					
					m_baseItem[7].m_info.x = x7 + m_baseItem[4].width - 50;
					m_baseItem[7].m_info.y = y7 - m_baseItem[4].height + 50;
					
					m_baseItem[8].m_info.x = x8 + m_baseItem[4].width - 50;
					m_baseItem[8].m_info.y = y8 - m_baseItem[4].height + 50;
					
					m_baseItem[9].m_info.x = x9 + m_baseItem[4].width - 50;
					m_baseItem[9].m_info.y = y9 - m_baseItem[4].height + 50;
					
					m_baseItem[10].m_info.x = x10 + m_baseItem[4].width - 50;
					m_baseItem[10].m_info.y = y10 - m_baseItem[4].height + 50;
					
					m_baseItem[11].m_info.x = x11 + m_baseItem[4].width - 50;
					m_baseItem[11].m_info.y = y11 - m_baseItem[4].height + 50;
					break;
				
				case 1: 
					m_baseItem[0].x = 471+m_baseItem[0].width / 2-35;
					m_baseItem[0].y = 43+m_baseItem[0].height / 2-42;
					
					m_baseItem[7].x = 638+m_baseItem[0].width / 2-35; //
					m_baseItem[7].y = 498+m_baseItem[0].height / 2-42;
					
					m_baseItem[5].x = 435+m_baseItem[0].width / 2-35; //
					m_baseItem[5].y = 375+m_baseItem[0].height / 2-42;
					
					m_baseItem[4].x = 800+m_baseItem[0].width / 2-35; //
					m_baseItem[4].y = 444+m_baseItem[0].height / 2-42;
					
					m_baseItem[2].x = 485+m_baseItem[0].width / 2-35; //
					m_baseItem[2].y = 257+m_baseItem[0].height / 2-42;
					
					m_baseItem[1].x = 641+m_baseItem[0].width / 2-35; //
					m_baseItem[1].y = 144+m_baseItem[0].height / 2-42;
					
					m_baseItem[6].x = 533+m_baseItem[0].width / 2-35; //
					m_baseItem[6].y = 425+m_baseItem[0].height / 2-42;
					
					m_baseItem[3].x = 687+m_baseItem[0].width / 2-35; //
					m_baseItem[3].y = 312+m_baseItem[0].height / 2-42;
					
					x0 = m_baseItem[0].x;
					y0 = m_baseItem[0].y;
					x1 = m_baseItem[1].x;
					y1 = m_baseItem[1].y;
					x2 = m_baseItem[2].x;
					y2 = m_baseItem[2].y;
					x3 = m_baseItem[3].x;
					y3 = m_baseItem[3].y;
					x4 = m_baseItem[4].x;
					y4 = m_baseItem[4].y;
					x5 = m_baseItem[5].x;
					y5 = m_baseItem[5].y;
					x6 = m_baseItem[6].x;
					y6 = m_baseItem[6].y;
					x7 = m_baseItem[7].x;
					y7 = m_baseItem[7].y;
					
					m_baseItem[0].m_info.x = x0 + m_baseItem[0].width - 50;
					m_baseItem[0].m_info.y = y0 - m_baseItem[0].height + 50;
					
					m_baseItem[1].m_info.x = x1 + m_baseItem[1].width - 50;
					m_baseItem[1].m_info.y = y1 - m_baseItem[1].height + 50;
					
					m_baseItem[2].m_info.x = x2 + m_baseItem[2].width - 50;
					m_baseItem[2].m_info.y = y2 - m_baseItem[2].height + 50;
					
					m_baseItem[3].m_info.x = x3 + m_baseItem[3].width - 50;
					m_baseItem[3].m_info.y = y3 - m_baseItem[3].height + 50;
					
					m_baseItem[4].m_info.x = x4 + m_baseItem[4].width - 50;
					m_baseItem[4].m_info.y = y4 - m_baseItem[4].height + 50;
					
					m_baseItem[5].m_info.x = x5 + m_baseItem[4].width - 50;
					m_baseItem[5].m_info.y = y5 - m_baseItem[4].height + 50;
					
					m_baseItem[6].m_info.x = x6 + m_baseItem[4].width - 50;
					m_baseItem[6].m_info.y = y6 - m_baseItem[4].height + 50;
					
					m_baseItem[7].m_info.x = x7 + m_baseItem[4].width - 50;
					m_baseItem[7].m_info.y = y7 - m_baseItem[4].height + 50;
					break;
			}
		
		}
		
		override public function release():void
		{
			for (var i:int = 0; i < m_baseItem.length; i++)
			{
				m_baseItem[i].release();
			}
			this.removeChildren();
			m_sprite.removeChild(this);
		}
	}

}